home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 8 / QRZ Ham Radio Callsign Database - Volume 8.iso / mac / files / dsp / tor306.exe / DOCS < prev    next >
Text File  |  1994-03-06  |  91KB  |  2,132 lines

  1. PCTOR V3.06
  2.  
  3. PCTOR (c) Johan Forrer KC7WW 1991,1994
  4.  
  5.  
  6. Author: Johan B. Forrer KC7WW
  7. 26553 Priceview Drive
  8. Monroe, OR 97456
  9. United States of America
  10.  
  11.  
  12.  
  13.  
  14. Shareware notice
  15.  
  16.  
  17. This program is distributed as Shareware. You may freely
  18. copy and share this program with your friends and fellow radio
  19. amateurs as long as Shareware and copyright notices stay
  20. intact.  PCTOR may not be sold or distributed with
  21. another product without the express written permission of the
  22. author. The author, Johan Forrer, KC7WW will only support
  23. unmodified copies of this software.
  24.  
  25. If you are planning to use the program on a regular basis, you must
  26. become a registered user to enjoy further benefits. Please complete the
  27. attached form. If you are not satisfied with the program after registering 
  28. it, you have 30 days from your registration date to return it for a
  29. full refund of your money, no questions asked.
  30.  
  31. Previously registered users may obtain a free upgrade to this
  32. version - please send a formatted disk and SASE (or stamped
  33. mailer or 2 IRC's).
  34.  
  35. This program may not be used by business or government
  36. institutions without proper licensing. Commercial users please
  37. contact Johan Forrer directly for modifications and/or details of
  38. site licensing.
  39.  
  40.  
  41. Acknowledgements
  42.  
  43.  
  44.  
  45. The work and ideas of Peter Martinez, G3PLX, and Paul Newland,
  46. AD7I, has been the source and inspiration for doing the "nuts and
  47. bolts" in this project.
  48.  
  49. Victor Poor's, W5SMM, helpful suggestions and ideas on
  50. compatibility with MBBIOS, PAMS/APlink, and the implementation of
  51. the extended ASCII set was invaluable.
  52.  
  53. The helpful suggestions of Frank Gorichar, W7JUF, who beta tested
  54. early versions of this software is greatly appreciated. A special
  55. word of appreciation to beta tester Peter Ferrand, WB2QLL/1, with
  56. helping sort out various bugs. Malcolm, WA9BVS's beta testing has
  57. helped locate numerous obscure bugs.
  58.  
  59. Thanks to Frank Wyatt, N6FW for forwarding technical
  60. documentation to me.
  61.  
  62. Many individuals have sent in "wish lists", some of which are now
  63. part of the latest version.  As always - your support, criticism,
  64. and suggestions are appreciated.
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.        Please support the efforts of shareware developers.
  77.  
  78. Table of contents
  79.  
  80.  
  81.  
  82. 0.0  Quick summary for this release.
  83.  
  84. 1.0  PCTOR what does it do ?
  85.  
  86.        1.1  Minimum requirements to run PCTOR
  87.  
  88.        1.2    CAUTION
  89.  
  90.        1.3  Planned enhancements
  91.  
  92. 2.0  Introduction
  93.  
  94. 3.0  Hardware Interface
  95.  
  96. 4.0  Installation
  97.  
  98.        4.1  Software
  99.  
  100.        4.2  Customizing the configuration file
  101.  
  102. 5.0  Operating PCTOR
  103.  
  104.        5.1 Function keys
  105.  
  106.        5.2 Command menu
  107.  
  108. 6.0 Appendix
  109.  
  110.      6.1 If problems persist.....
  111.      6.2 What if it still does not work .....
  112.        6.3 A few notes about HF modems.
  113.        6.4 Soft error detection and correction.
  114.        6.5 Frequencies of FEC stations for test purposes.
  115.        6.6 Signal analysis module.
  116.        6.7 DSP modem.
  117.        6.8 PCTOR update history.
  118.        6.9  1992 Newsletter
  119.        6.10 1993 Newsletter
  120. 7.0  Disclaimer
  121.  
  122.  
  123.  
  124. 0.0 Quick summary for version 3.06
  125.  
  126.  
  127.  
  128. -------------------------------------------------------
  129. THE FOLLOWING ANNOUNCEMENT IS IMPORTANT TO SOME USERS.
  130. -------------------------------------------------------
  131.  
  132.  
  133. In order to support an new DSP modem on the same COM port that
  134. PCTOR uses, version 3.06 now only supports transmitted data
  135. output though TxD, (pin 2 on a DB25 or DB9). This is due to the
  136. re-allocation of DTR for other purposes (the DSP uses it). It is
  137. essential to establish whether your serial port UART is suitable
  138. at higher baud rates - most modern serial ports will work without
  139. any problems, some older styles may will not work too well.
  140.  
  141. Input and output mask options have been removed. These options
  142. only made sense when PCTOR was an AMTOR-only program. Ever since
  143. PCTOR included support for RTTY and now PacTOR, these mask
  144. settings often contradicted "normal" usage of RS232 signalling
  145. conventions. A general rule that holds for all modes now are:
  146.  
  147. Mark  (binary 1) = -12V
  148. Space (binary 0) = +12V
  149.  
  150. PTT keyed = +12V
  151.  
  152. This holds for RTTY/ASCII/AMTOR and HF Packet. Although PacTOR
  153. does not commit to any specifically. In order to be compatible
  154. with this convention, please check your modem and transceiver
  155. interfacing.
  156.  
  157. If the TI DSK-based DSP modem is to be used with PCTOR, please
  158. make sure that it is connected to the serial port, powered up and
  159. ready for use. Also make sure that the "TOR.CNF" file contains
  160. the lines:
  161.  
  162. dskmodem:2  .... 2=requests DSP modem support
  163.                  0=disables DSP support - requires an externam modem
  164.  
  165. dskbaud:1   .... 1=115200      baud for DSK comms
  166.                  2=(115200/2)  baud for DSK
  167.                  3=(115200/3)  baud for DSK
  168.                  A value of 1 should work for faster machines,
  169.                  however, if you experience problems with loading
  170.                  the DSK, use a lower baudrate.
  171. dskrtty:1
  172. dskascii:1
  173. dskamtor:2
  174. dskpactor:3
  175. dskpacket:4 ..... where 1=170 Hz shift 50  baud modem
  176.                         2=170 Hz shift 100 baud modem
  177.                         3=200 Hz shift 200 baud modem
  178.                         4=200 Hz shift 300 baud modem
  179.                         5=170 Hz shift 50  baud modem (low tones)
  180.  
  181.                         6=450 Hz shift 50  baud modem (low tones)
  182.  
  183. Further information on the DSK-based DSP modems are available in
  184. a separate document.
  185.  
  186. New features:
  187.  
  188. 1. Any COM port (1 - 4) may be specified in the configuration
  189. file. Please make sure that your configuration file contain an
  190. entry:
  191.  
  192. com:x    where x=1, 2, 4, or 4
  193.  
  194. 2. If a TI 320C26 DSK is used as a DSP modem, appropriate modem
  195. code will be loaded automatically when operating modes are
  196. changed.
  197.  
  198.  
  199.  Bug fixes since version 3.03:
  200.  
  201. 1. Some users reported that they experienced a system lockup
  202. after the initial screen. This was reported in cases where a
  203. sound card was installed in the system, and also with DOS 6. The
  204. problem was traced to a Compiler bug and required some minor
  205. rework of code.
  206. 1.0 PCTOR what does it do ?
  207.  
  208.  
  209. Using only a low cost external HF modem, PCTOR makes it possible
  210. to run AMTOR on PC compatible hardware without the need of
  211. dedicated multi-mode terminal node controller (TNC) hardware. All
  212. decoding is performed in software in real time using only PC
  213. hardware. The software has been tested to work even on a lowly
  214. 4.77 Mhz PC compatible.
  215.  
  216.  
  217. PCTOR will run under Microsoft Windows as a DOS application in
  218. full screen mode (please see the supplied .PIF file), however
  219. this kind of operation is presently not recommended. Future
  220. releases of PCTOR will be specific for operation under the
  221. Microsoft Windows platform.
  222.  
  223.  
  224. The main features of PCTOR could be summarized as:
  225.  
  226.  
  227.  
  228. 1  - Split screen operation: Data received through the AMTOR
  229.      translator is displayed on the upper window. The operator's
  230.      keyboard entry is displayed on the lower window. A status
  231.      window shows real-time operational status of the digital
  232.      translator. This includes, timing, path propagation delay,
  233.        link status, selcals, and more.
  234.  
  235. 2 -  All AMTOR modes are supported: ARQ, FEQ, and "Listen".
  236.      Ascii/Baudot at any baudrate (practical maximum is 1200
  237.      baud).
  238.  
  239. 3 -  The user may define several text buffers, i.e. brag tape,
  240.      CQ messages, etc. that may be loaded for transmission with
  241.      with one key stroke.
  242.  
  243. 4 -  Text files my be transmitted. Typically the user will
  244.      prepare these off-line.
  245.  
  246. 5 -  Unshift-on-space (UOS) option.
  247.  
  248. 6 -  "PLX"-method of upper/lower case with extensions as
  249.      developed by Peter Martinez (G3PLX), and Victor Poor
  250.      (W5SMM).
  251.  
  252. 7 -  A "high" reliability option based on multiple bit sampling
  253.      and majority voting. Memory ARQ for AMTOR is also supported.
  254.  
  255. 8 -  Receive data can be optionally be captured in a file.
  256.      Automatic time stamps, as well as user-initiated time stamps
  257.      may be entered into this capture file. The capture file can
  258.      be read using an ordinary text editor.
  259.  
  260. 9 -  PCTOR can open a Dos shell (viable only for 386/486)
  261.      with the low level AMTOR decoder running. The low
  262.      level decoder has buffered I/O queues to accept traffic even
  263.      when PCTOR has opened a DOS shell.
  264.  
  265.  
  266. 10 - The user can customize the working environment through use
  267.      of a configuration file that is read when PCTOR starts up.
  268.      Usage of a DOS environment variable "PCTOR" allows easy
  269.      accommodation for a variety of operating environments.
  270.  
  271. 11 - Keyboard entry is either in word-edit or character mode.
  272.      When in word-edit mode, keyboard data is only entered into
  273.      the type-ahead buffer when a space is entered (or carriage
  274.      return, or the special symbol sequence "+?"). This way
  275.      typing mistakes may be corrected before releasing them over
  276.      the air.
  277.  
  278. 12 - Advanced signal processing is available when using a special
  279.      modem. This type of modem allows PCTOR to analyze internal
  280.      circuit voltages in order to perform "soft" error detection
  281.      and correction. Please see section 6.4 for further details.
  282.  
  283. 13 - PCTOR's time may be set either for UTC or the user's local
  284.      time. 1.1 Minimum requirements to run PCTOR
  285.  
  286.  
  287. PCTOR will run on an IBM PC or close compatible computer. DOS 3.1
  288. or higher is required. A monochrome or EGA/VGA display adaptor
  289. will work. Although the software will run on a floppy-based
  290. system, a hard disk is recommended. The definition of "true IBM
  291. compatibility" is fuzzy and a great deal of flexibility has been
  292. built into the programs to handle a wide range of PC hardware.
  293. Please refer to the appendix where some further notes on dealing
  294. with incompatibilities are included.
  295.  
  296. Some of the DSP options are only feasible on more powerful
  297. machines, i.e. 386 with co-processor or a 486.
  298.  
  299. On the radio side, an HF modem, i.e. ST-6 or equivalent is
  300. required to decode received audio to +/- 12V RS232 logic signals.
  301. For transmission of AMTOR over the air, the user also has to
  302. provide a PTT interface and either AFSK or FSK. These interfaces
  303. are often included in an HF modem. If the software is used for
  304. monitoring only, only the HF modem is required. The HF modem is
  305. required to convert audio tones to RS232 compatible digital
  306. levels required by PCTOR (please see 6.3 for further notes on HF
  307. modems).
  308.  
  309. PCTOR uses some of the signal lines of the standard COM1 or COM2
  310. serial ports as a digital interface (the user specifies which COM
  311. port - see "Installation - software").   1.2 Caution
  312.  
  313.  
  314.  
  315. This software may not be suitable for all working environments.
  316. The user should therefore proceed with the usual caution and make
  317. sure critical software is backed up.
  318.  
  319. Every effort has been made to ensure that the software is "well
  320. behaved", however, the user is reminded that this software relies
  321. on critical timing. Normal system functionality is retained, i.e.
  322. time-of-day and floppy disk timeout activities. The user must
  323. thus be careful not to run other software that relies on similar
  324. "tricks" that PCTOR uses as the consequences are indeterminable.
  325.  
  326. Normal program usage and program termination will undo the
  327. actions of PCTOR and restore normal system operation. Should a
  328. program failure occur, the only way to restore normal system
  329. operation is to reboot DOS.
  330.  
  331. 1.3 Planned enhancements
  332.  
  333.  
  334.  
  335. Several enhancements are planned for release in the near future.
  336. As a registered user you will be notified of these when it
  337. becomes available. These include:
  338.  
  339. * PACTOR (a pre-release version is already available).
  340. * SAA/CUA standard interface (Windows Application).
  341. 2.0 Introduction
  342.  
  343.  
  344.  
  345. PCTOR is an implementation of CCIR specification 476-2 on an IBM
  346. personal computer or compatible computer. As such, it replaces
  347. the need for dedicated TNC hardware and is an attractive
  348. alternative for the casual user evaluating a new operating mode,
  349. as well as the serious developer that needs to embed low level
  350. I/O functionality into a system. 
  351.  
  352. PCTOR contain a user-interface program that works in conjunction
  353. with several low-level routines that enables a user to operate
  354. and monitor TOR traffic with a minimum of fuss. Its
  355. multiple-window user interface allows simultaneous monitoring of
  356. decoded traffic, decoding status, and user keyboard history. Pop-
  357. up windows is used for setting operational parameters, file-I/O
  358. operations, and canned buffer transmissions.
  359.  
  360. Function keys are used for quick, easy, and efficient control of
  361. most operations.
  362.  
  363. PCTOR was developed using Borland C++ Version 3.1. The low-level
  364. interface was developed using Borland Turbo Assembler version
  365. 3.0.
  366. 3.0 Hardware interface
  367.  
  368.  
  369.  
  370. PCTOR interfaces through signals of the COM1 or COM2 RS232 port.
  371. The following allocation of RS232 signals have been made: Other
  372. signal pins may be connected, however will play no part in the
  373. operation of PCTOR.
  374.  
  375. Note that for a minimal interface, DTR, RTS, DCD, and Ground, is
  376. required. This will allow operation on AMTOR. For ascii/baudot,
  377. RD and TD must be utilized. If further software support for the
  378. tuning display or memory ARQ is required, a parallel port
  379. interface is required. Please contact the author for further
  380. details. 
  381.  
  382.  
  383. For a 25-pin serial connector:
  384.  
  385. pin 2   (TD)  - output data bits (mark -12V, space +12V)
  386. pin 4   (RTS) - PTT              (off  -12V, on    +12V)
  387. pin 8   (DCD) - input data bits  (mark -12V, space +12V)
  388. pin 7   (Ground)
  389.  
  390. The following link is required:
  391.  
  392. pin 3   (RD)  connected to pin 8 (DCD).
  393.  
  394.  
  395.  
  396. For a 9-pin serial connector:
  397.  
  398. pin 3   (TD)  - output data bits (mark -12V, space +12V)
  399. pin 7   (RTS) - PTT              (off  -12V, on    +12V)
  400. pin 1   (DCD) - input data bits  (mark -12V, space +12V)
  401. pin 5   (Ground)
  402.  
  403.  
  404. The following link is required:
  405.  
  406. pin 2   (RD)  connected to pin 1 (DCD).
  407.  
  408.  
  409. When PCTOR is used in conjunction with the AN-93 analog modem,
  410. the parallel port interface is as follows:
  411.  
  412. For a 25-pin parallel printer connector:
  413.  
  414. pin 15 - AD0    (bits 0 - 4 from the A/D convertor)
  415. pin 13 - AD1
  416. pin 12 - AD2
  417. pin 11 - AD3
  418. pin 10 - AD4
  419.  
  420. pin 1  - Strobe (strobe for A/D convertor)
  421.  
  422. pin 18-25 - Ground
  423. 4.0 Installation
  424.  
  425.  
  426. 4.1 Software
  427.  
  428.  
  429. It is assumed that a hard disk is available, though the program
  430. can be run off a floppy disk as well. In fact it is suggested
  431. that you first run off a floppy disk to see if this software is
  432. compatible with other software that you may have on your system.
  433.  
  434. 1. Create a new subdirectory and change directory to it, i.e.
  435.  
  436.    mkdir tor 
  437.    cd tor
  438.  
  439. 2. Copy the contents of the floppy to the new subdirectory.
  440.  
  441.    copy a:*.*
  442.  
  443.    The following files will be copied:
  444.     
  445.    tor.exe    -- The split screen AMTOR program. 
  446.    tor.cnf    -- Setup file to custom configure your program. 
  447.    docs       -- This documentation.
  448.    brag.tor   -- An example test file to load.
  449.    cq.tor     -- Another example file to load.
  450.    test.tor   -- A buffer file for demonstration of control
  451.                  characters
  452.    AMTOR.BAT  -- A batch file to run TOR with a parameter. Check
  453.                  to see which communications port COM 1 or 2 you
  454.                  desire.
  455.  
  456. 3. Customize tor.cnf  (see 4.2 "Customizing the configuration").
  457.  
  458. 4. Create, or edit the files with ".tor" extensions. These files
  459.    will be read when the program starts and will become the
  460.    user's personalized buffers. These are transmitted by using
  461.    the "hot" keys ALT-1 through ALT-9. The two included examples
  462.    are typical.
  463.  
  464. 5. Edit the the batch file "AMTOR.BAT" to suit your screen
  465.    display color requirements (Please see section 9).
  466.  
  467. 6. Run the batch file AMTOR, i.e. type AMTOR <enter>, or
  468.    alternatively run it directly from the command line. 
  469.  
  470. 7. Make sure that you use the "ANSI.SYS" device driver in your
  471.    DOS config.sys (please see about ANSI.SYS in your DOS manual).
  472.  
  473. 8. There are three DOS environment variables that is worth
  474. knowing about. If you are not familiar with environment
  475. variables, type "SET" with no additional parameters at the DOS
  476. command line for the present list of environment variables on
  477. your machine. Some programs actually scans this list and may
  478. configure themselves accordingly. As far as PCTOR is concerned,
  479. your time zone, i.e. how many hours your are way from UTC time,
  480. and what abbreviation you would like to use for logging and
  481. operating purposes, is important. This environmental variable is
  482. called "TZ" and you typically include it in your autoexec.bat:
  483.  
  484.    set TZ=PST8  (I use this for setting Pacific Standard Time,
  485.                  that is 8 hours after UTC. Please consult your
  486.                  DOS manual).
  487.  
  488. When you need to run PCTOR with say a bunch of different
  489. configuration files, or different ".tor" files, the "PCTOR"
  490. environment variable may be used to distinguish amongst them.
  491. Otherwise PCTOR will use the configuration file and ".tor" files
  492. in the local subdirectory from where you executed PCTOR from. If
  493. for example you need to use a different subdirectory for your
  494. configuration file than where your execute tor.exe, then the
  495. following command need to be typed at the DOS command line, or
  496. included your autoexec.bat (lets assume the configuration file is
  497. in c:\COMM):
  498.  
  499.        set PCTOR=c:\COMM
  500.  
  501. The third environment variable that is of concern is COMSPEC.
  502. This variable tells PCTOR where to locate "command.com" when a
  503. dosshell is invoked (the F8 key). Usually the root directory is
  504. used, but there are instances where users specifically wish to
  505. locate their command.com elsewhere. DO NOT CHANGE the COMSPEC
  506. variable unless you are very familiar with DOS.
  507.  
  508. 9. Several options are configurable from PCTOR's command line.
  509. This includes the type of display adaptor, the number of lines in
  510. each of the split screen displays, and the colors of displayed
  511. characters, messages, and annunciators. If you are using an
  512. EGA/VGA/SVGA display adaptor, the default settings will probably
  513. be adequate. In that case, leave out any further parameters on
  514. the command line.
  515.  
  516. The general format of the command line format is:
  517.  
  518. TOR [/B | /C | /M] [/Wxx] [/R] [[/SCxx] [/SExx] [/SBxx]
  519.                                 [/SMxx] [/SAxx]]
  520.  
  521. A command line parameters require the leading "/" followed by a
  522. directive such as B,C,M,W,R, or S. These parameters may be
  523. submitted in any order, each occurring only once. Note that for
  524. the display adaptor group, only one parameter, i.e. /B, or /C, or
  525. /M must be present. If for instance you have a monitor that has
  526. both color and black and white capabilities, and you desire to
  527. use a black and white display, use the /B. Using monochrome in
  528. this case will probably lock up your display.
  529.  
  530. The significance of the command line parameters are given below.
  531.  
  532. ┌───────────────────────────────────────────────────────┐
  533. │ Parameter               Description                   │
  534. ╞═══════════════════════════════════════════════════════╡
  535. │     Display type    (ONLY ONE OF THESE ALLOWED)       │
  536. ├───────────────────────────────────────────────────────┤
  537. │     B                   Black and white on a color display  │
  538. │     C                   Color                               │
  539. │     M            Monochrome                                          │
  540. ╞═══════════════════════════════════════════════════════╡
  541. │     Wxx          Size of receive display (lines)          │
  542. ╞═══════════════════════════════════════════════════════╡
  543. │     R       Receive only - disable transmit facilities    │
  544. ╞═══════════════════════════════════════════════════════╡
  545. │             Display color attributes                  │
  546. ├───────────────────────────────────────────────────────┤
  547. │     SCcc                Received traffic character color    │
  548. │     SEcc                Echoed   traffic character color    │
  549. │     SBcc                Background      color                            │
  550. │     SMcc                Message     character color         │
  551. │     SAcc          Annunciator character color         │
  552. └───────────────────────────────────────────────────────┘
  553. * The field xx indicates an integer number of lines.
  554.   The field cc indicates a color code as given in the color table
  555. below.  
  556.  
  557. Certain restrictions apply to assignment of foreground and
  558. background  colors. Example. The default settings are:
  559.  
  560. TOR /C /W20 /SC7 /SE15 /SB1 /SM3 /SA14
  561.  
  562. This translates to: Color display (CGA/EGA/VGA), 22 line receive
  563. display size, SC=Lightgray, SE=White, SB=Blue, SM=Cyan,
  564. SA=Yellow.
  565.  
  566. Experience have shown that there are various types of monochrome
  567. display adapters around. Even those that are advertized as
  568. "Hercules" compatible often behave differently. Some of these
  569. monochrome display adapters could be used as being "color" as
  570. they will correctly map colors to the appropriate black/white
  571. attributes. Other monochrome adapters, however require the /M
  572. parameter and must not contain any color attributes. Some
  573. experimentation is necessary. Be warned that in some instances an
  574. inappropriate display selection may lock up your machine and
  575. require a reboot to recover.
  576.  
  577. The receive-only command line option, /R, will disable all
  578. transmit facilities such as F1, F2, as well as functions that
  579. enter data into transmit buffers. It is also recommended in this
  580. instance to remove the keyboard-buffer window altogether using
  581. /W25.
  582.  
  583.  
  584.  
  585.  
  586. Color constants for setting PCTOR display attributes.
  587.  
  588. ┌─────────────────────────────────────────────────────┐
  589. │ Color Constant   Value     Foreground or Background │
  590. ╞═════════════════════════════════════════════════════╡
  591. │BLACK                    0                   Both                       │
  592. │BLUE                     1                   Both                       │
  593. │GREEN                    2                   Both                       │
  594. │CYAN                     3                   Both                       │
  595. │RED                    4                     Both                       │
  596. │MAGENTA                  5                   Both                       │
  597. │BROWN                    6                   Both                       │
  598. │LIGHTGRAY                7                   Both                       │
  599. │DARKGRAY               8                     Foreground only      │
  600. │LIGHTBLUE                9                   Foreground only      │
  601. │LIGHTGREEN              10                   Foreground only      │
  602. │LIGHTCYAN               11                   Foreground only      │
  603. │LIGHTRED              12                     Foreground only      │
  604. │LIGHTMAGENTA            13                   Foreground only      │
  605. │YELLOW                  14                   Foreground only      │
  606. │WHITE                   15                   Foreground only      │
  607. └─────────────────────────────────────────────────────┘
  608.  
  609. 4.2 Customizing the configuration
  610.  
  611.  
  612.  
  613. To enable a user to streamline the setup of the program to his
  614. requirements, a configuration file, "tor.cnf" is read during
  615. startup. Read and edit the contents of the provided file
  616. "tor.cnf" to suit your own preferences. This file is optional,
  617. but when not found, the system will use defaults. These entries
  618. are all optional, and may appear in any order, however, please do
  619. not enter any spaces between symbols, 
  620.  
  621. i.e. 
  622.  
  623. vid : 1        is NOT the same as       vid:1
  624.  
  625. (The last one is correct).
  626.  
  627.  
  628.  
  629. The following entries may be customized:
  630.  
  631. id:KCWW/KC7WW             ----- set your identity selcal/callsign
  632. selcal:WDRZ/WA8DRZ/6      ----- set the  startup selcal/callsign.
  633. wru:QRA KC7WW KCWW        ----- your WRU text.
  634. com:1                     ----- COM port to use 1= COM 1
  635.                                                 2= COM 2
  636.                                                 3= COM 3
  637.                                                 4= COM 4
  638. opmode:0                  ----- defines start-up mode 0 = AMTOR
  639.                                                       1 = BAUDOT
  640.                                                       2 = ASCII
  641. baud:45                   ----- initialize BAUDOT/ASCII baudrate
  642. txdelay:30                ----- delay (ms) after PTT on till data
  643.                                 out.This gives your transmitter
  644.                                 time to changeover to transmit.
  645. cddelay:3                 ----- delay (ms) after a data block is
  646.                                 received before acknowledgement
  647.                                 is sent. This gives the other
  648.                                 station's receiver time to
  649.                                 recover.
  650. timing:25                 ----- system clock timing adjustment
  651. uos:0                     ----- unshift-on-space OFF
  652. diddle:0                  ----- RTTY diddle is OFF
  653. case:0                    ----- upper/lower case OFF
  654. log:1                     ----- receive data capture (logging)
  655. logfile:tor.log           ----- data capture filename
  656. scrollfile:scroll.tmp     ----- name of scroll file - if a
  657.                                 ramdisk is available, use the
  658.                                 full drive name here
  659. logprog:logger.exe        ----- name of user's personal log
  660.                                 program
  661. packetprog:pac.bat        ----- name of user's packet program
  662. rel:0                     ----- reliability OFF
  663. vid:1                     ----- DIRECT video I/O enabled (see
  664.                                 appendix on hardware
  665.                                 compatibility)
  666. fcrlf:1                   ----- Files, i.e. buffers and files to
  667.                                 be sent through the ALT-F command
  668.                                 should use the AUTOMATIC CR/LF
  669.                                 mode. This means that all CR's in
  670.                                 the input text files will be
  671.                                 ignored, and LF will be
  672.                                 interpreted as CR/LF.
  673.  
  674. refr:15                   ----- Status update rate. The number of
  675.                                 system ticks between updates,
  676.                                 i.e. 15*55mS=0.825 seconds. To
  677.                                 fast a rate will flicker or
  678.                                 perhaps may introduce timing
  679.                                 problems, too slow will affect
  680.                                 animation of timing bar, clock,
  681.                                 etc.
  682. time:0                    ----- Use local time in displays and
  683.                                 logging. If UTC time is required,
  684.                                 use time:1 (also refer to the TZ
  685.                                 environment variable).
  686. tuning:0                  ----- Disable software support for
  687.                                 tuning display. To utilize this
  688.                                 feature, use tuning:1. A
  689.                                 special modem is required.
  690. marq:0                    ----- Disable memory ARQ. Different
  691.                                 levels of memory ARQ are
  692.                                 recognized. Presently only level
  693.                                 1, "hard bits" is recognized.
  694.                                 To utilize level 2 memory ARQ,
  695.                                 i.e "soft bits", a special modem
  696.                                 is required.
  697. word:1                    ----- Turns word-edit mode on.
  698. stats:0                           ----- Turns statistics off. When
  699.                                 stats:1, displays the number of
  700.                                 blocks received, number of blocks
  701.                                 in error, and when memory ARQ is
  702.                                 enabled, the number of blocks
  703.                                 successfully reconstructed. These
  704.                                 statistics are also inserted in
  705.                                 the log file for later retrieval.
  706. dskmdm:0                   -----DSP modem 0 = Use external modem
  707.                                           1 = Use DSK.
  708.  
  709. Note that the syntax isn't tested very rigorously. Please check
  710. your input carefully against the supplied example.
  711.  
  712. Both the AMTOR mode of PCTOR and RTTY/ASCII uses "common RS232
  713. convention" where:
  714.  
  715.                      Mark (binary 1) = -12V 
  716.                      Space (binary 0) = +12V
  717.  
  718.                      PTT not asserted (open) = -12V
  719.                      PTT asserted (keyed)    = +12V
  720.  
  721. Until you have sorted out the required logic interfacing logic,
  722. prepare your transceiver for low power output into a dummy load
  723. (you may find your PTT unexpectedly comes on upon executing the
  724. program).
  725.  
  726. Now run TOR. If your PTT comes on right away, the sense of RTS
  727. must be inverted before further testing can be done. Normally,
  728. TOR should put you in standby mode (PTT OFF).
  729.  
  730. Next, on-the air tests will be necessary. Try to decode some FEC.
  731. FEC will be decoded while in standby mode. To make sure that you
  732. are in standby mode, hit F10. Tune in on an FEC transmission and
  733. wait for it to sync. If it fails to decode anything, first try
  734. changing the other sideband setting of your transceiver (if you
  735. normally use LSB, try using USB). This will show whether it's the
  736. interface logic or whether there is some other problem. If TOR
  737. receives FEC in the other sideband setting, the sense of DCD
  738. needs to be changed. 
  739.  
  740. The final test is to determine the logic level required for the
  741. transmitted data. Try an ARQ call. If it fails, you need to
  742. invert the sense of TxD.
  743.  
  744. There is an additional timing-related entry, "timing:" that need
  745. to be set up. This parameter allows external adjustment of the
  746. system clock pulses to cater for systems with inaccurate clocks.
  747. Very few PC's have accurate clocks and although the default value
  748. (25) will work reasonable well in most cases, adjustment of this
  749. parameter is very desirable. For determining the value of this
  750. timing parameter, see  5.2 - Command menu: usage of the 'T'
  751. option. 
  752. 5.0 Operating PCTOR
  753.  
  754.  
  755.  
  756. Upon startup, the shareware banner may be displayed if you are
  757. suing the shareware version. In this case, press the ESC key to
  758. proceed to the PCTOR screen.
  759.  
  760. The contents and layout of the status display line depends on
  761. which options the user has selected. The following description
  762. refers to the case when all the options are enabled. This gives
  763. the reader a description of all possibilities.
  764.  
  765. PCTOR displays several windows: two status displays, the received
  766. traffic window, and the keyboard display. 
  767.  
  768. The smallest display is at the top of the screen, is the status
  769. window that is updated in real time and some machines may show
  770. some flickering. This is normal. 
  771.  
  772. Link status information, i.e. ARQ/BAUDOT/ASCII, IDLE, TFC, ERR,
  773. RQ, is displayed on the left hand side of the status line.
  774.  
  775. Adjacent to the link status is the selcal/callsign of the remote
  776. station. This data is used in establishing the link and also for
  777. printing out identification data (see usage of the "Ins" key).
  778.  
  779. Next, the programmed delays are shown: TD is the time (in
  780. milliseconds) that you allow, after the PTT signal has been
  781. activated, before data output will start. It is one way to
  782. compensate for slower on-switching equipment on your end. It
  783. allows for things to settle, before actual data is being sent.
  784. The default value (30 ms) is a reasonable compromise. CD is the
  785. time (in milliseconds) that allows the remote station's receiver
  786. to recover after it sent a block and is getting ready to receive
  787. your acknowledgment. The default of 3ms is reasonable. Actually,
  788. the total time before the user will be able to sample the
  789. acknowledgement is CD+TD. When you are sending blocks, however,
  790. then TD only plays a role. This split timing scheme allows for
  791. compensation in situations where the remote station experiences
  792. slower receiver recovery that transmit turn-on time. This is
  793. typical for local contacts.
  794.  
  795. Once some traffic starts flowing, and you were the call
  796. originator on ARQ (i.e. the "Master"), the block receive time
  797. will be displayed. This is an internal timing parameter that
  798. cannot be changed. It includes the delay-parameters at both send
  799. and receive stations as well as the time delay due to the signal
  800. propagation through the atmosphere. If you notice considerable
  801. variation, then multipath propagation is most probably the
  802. reason, however, under high noise conditions, the simple types of
  803. modems may also pass too much pulse noise for the software to
  804. achieve good bit phasing lock.
  805.  
  806. If the unshift-on-space (UOS) feature has been selected, this
  807. will be displayed as a µ symbol. This feature will shift letter
  808. shift when a space character is printed. Under noisy conditions,
  809. this will prevent the printing of data in the wrong case.
  810.  
  811. If the user has selected the receive screen capture
  812. (autologging), the a ¢ symbol will be displayed.
  813.  
  814. When the reliability option is selected a √ symbol will be
  815. displayed. Reliability is obtained by sampling each bit multiple
  816. times and using a majority voting.
  817.  
  818. If the user selected upper/lower case operation, there will be
  819. two arrows, the first one is associated with the case of the
  820. receive text, while the second one is associated with the
  821. transmit case. An "up" arrow means upper case, while a "down"
  822. arrow indicates lower case.
  823.  
  824. A 24 hour-format clock is also shown on the display. This clock
  825. is used for time stamps that are written to the log file, if
  826. enabled. The clock may be set for local time or UTC time (also
  827. see section 4.1 for details).
  828.  
  829. An eleven bit analog indicator on the right hand side shows how
  830. bit phasing is progressing. During FEQ or ARQ, the indicator
  831. should show slow motion from right to left. The speed of the
  832. motion depends on how much your clock and the other station's are
  833. differing relative to each other.
  834.  
  835. When the special TOR modem is used, and provided that the
  836. "tuning:1" option is set in the configuration file, a tuning
  837. indicator is displayed immediately below the bit phasing display.
  838. This tuning display consists of ten gradations each for mark and
  839. space simulating two bar-graph displays. The position of the
  840. indicator within the bar-graph display is proportional to energy
  841. passing through the mark and space filters in the modem's
  842. discriminator. When there is sufficient energy present, the color
  843. of the displayed indicator will change from a grayed outline to a
  844. solid color (red for mark and yellow for space on color
  845. displays). A well-tuned signal shows as two solid indicators that
  846. rests on the extreme end of the display. The display is quite
  847. steady and sharp.
  848.  
  849. When using the "marq:1" option is used, the level 1 memory ARQ
  850. procedure is performed during ARQ reception. This involves block
  851. reconstruction from multiple bad blocks using "hard bits". Level
  852. 2 memory ARQ uses "soft bits" in addition to "hard bits",
  853. however, the special TOR modem is required. When memory ARQ has
  854. been successful in reconstructing a block, this is shown as "ERR"
  855. with green background instead of the usual red background. 
  856.  
  857. The second status line displays the name of the user-supplied log
  858. file, the name of the user-supplied executable (usually a logging
  859. program), statistics, and the size of the type-ahead buffers.
  860. 5.1 Function keys
  861.  
  862.  
  863.  
  864. The function keys have the following functions:
  865.  
  866. F1  - Initiate an FEC (Ascii/Baudot) call.
  867.  
  868. F2  - Initiate an ARQ call.
  869.  
  870. F3  - Force a change-over (works only in ARQ).
  871.  
  872. F4  - Initiate QRT sequence (ends ARQ/FEC, Ascii/Baudot
  873.       transmissions).
  874.  
  875. F5  - If receive text capture is enabled, will insert a timestamp
  876.       into the log file.
  877.  
  878. F6  - Initiate ARQ listen mode.
  879.  
  880. F7  - Clear keyboard type ahead and special buffers (used for
  881.       WRU), clears keyboard display.
  882.  
  883. SHFT F7 - Clears receive display.
  884.  
  885. F8  - Open a DOS shell (use with care - 386/486 machines).
  886.  
  887. F9  - Not used.
  888.  
  889. F10 - Abort any operation in progress and revert to standby mode.
  890.  
  891. End - Enter the +? sequence into the keyboard buffer.
  892.  
  893. Ins - Enter an identification string into the keyboard buffer.
  894.  
  895. Del - Force LTR case during receive (FEC/ARQ or Baudot). In
  896.       addition will it reset the transmit and received cases to
  897.       UPPER.
  898.  
  899. Ctrl-Home - toggles "raw" data mode. For experimenters only -
  900.       displays untranslated ITA2 (Baudot) code in Hex. This data
  901.       is also written to the log for later analysis.
  902.  
  903. ESC - Calls up the command menu when in user mode. 
  904.  
  905. Pgup/PgDn// - Scrollback, any other key will restore screen
  906.  
  907. ALT-A Executes a signal analysis program. The modulation
  908.       signal as recovered after the low pass filter of the modem
  909.       is sampled and displayed in a graphics window. A second
  910.       graphics window displays the frequency domain equivalent.
  911.         Only EGA, VGA, and Hercules-compatibility is supported
  912.       (also see Appendix for more on the signal analysis
  913.       software).
  914.  
  915. ALT-B - Enter the buffers menu. This allows a data buffer to be
  916.       loaded into the keyboard buffer. The user prepares these
  917.       buffers ahead of time using a text editor. These files have
  918.       a "TOR" extension and will be loaded when TOR is
  919.       initialized. Also note the usage of the ALT-1 through ALT-9
  920.       keys as "hot" keys to load any of these buffers with one
  921.       keystroke.
  922.  
  923. ALT-C - Prompt user to enter the selcal/callsign of the remote
  924.       station AND initiate an ARQ call immediately.
  925.  
  926. ALT-D - Toggle RTTY diddle on/off.
  927.  
  928. ALT-F - File transmission menu. Allows the transmission of text
  929.       files while in FEC or ARQ. The transmitted text will be
  930.       displayed as it is transmitted. There will be no echo to
  931.       the receive window.
  932.  
  933. ALT-H - Displays a help screen, showing the usage of the various  
  934.       function keys.
  935.  
  936. ALT-M - "Hot keys" to the DSP modem control program.
  937.  
  938. ALT-L - Activate the program named in the configuration file
  939.       option "logprog". PCTOR remains running in the background.
  940.       Upon termination of the user's program, the PCTOR display
  941.       is restored.
  942.  
  943. ALT-P - "Hot keys" to PC-PACTOR. Note that PC-PACTOR need to be
  944.       available in the same directory than PCTOR.
  945.  
  946. ALT-O - Toggles output to printer on/off.
  947.  
  948. ALT-R - Prompt user for the selcal/callsign of the remote station
  949.       WITHOUT initiating an ARQ call.
  950.  
  951. ALT-T - Enter UTC time into the keyboard buffer for transmission
  952.       in FEC or ARQ.
  953.  
  954. ALT-W - Sends the "WRU" command to the remote station. This is
  955.       the "figs-D" character in the ITA2 (Baudot) alphabet.
  956.  
  957. ALT-X - terminates PCTOR in an orderly fashion. Equivalent to the
  958.       "Q" option in the command menu.
  959.  
  960. ALT-Y - "Hot key" to the packet program. Note that this typically
  961.       is a batch file. The user must set this up the "packetprog"
  962.       parameter in the configuration file. Please see 
  963.       section 4.2.
  964. 5.2 Command Menu
  965.  
  966.  
  967.  
  968. The command menu (called up when the ESC key is pressed when in
  969. the main display) has the following one letter commands:
  970.  
  971.  
  972.  
  973. C - Enable or disable upper/lower case operation.
  974. D - Set the cd and tx delays. CD is the time after reception of a
  975.     data block until your acknowledgement is forthcoming. TD sets
  976.     the time delay after the PTT is activated until data is sent.
  977.     For local contacts CD=10, TD=30 will be suitable. For DX
  978.     contacts CD=1, TD=10 is suitable. The default settings of
  979.     CD=3, TD-30 is adequate for most modern radios.
  980.        
  981. H - Help with the function keys.
  982. I - Set your own ARQ identity.
  983. K - Toggle between word-edit or character keyboard modes.
  984. L - Enable or disable receive capture (logging).
  985. O - Change operating mode AMTOR->BAUDOT->ASCII->AMTOR->...
  986. P - Change baudrate (300 max).
  987. Q - Terminate PCTOR.
  988. T - Set clock timing. This parameter allows fine adjustments of
  989.     the master clock. See Appendix A for further details.
  990. U - Sets UOS (unshift on space) on or off.
  991. V - Toggles video mode (DIRECT/BIOS).
  992. W - Set up your WRU text.
  993. X - Exit the command menu to main display. The ESC key may also
  994.     be used for this purpose. 
  995. Y - Sends out a 500 HZ pulse train from pin 20 for diagnostic
  996.     purposes.
  997.  
  998. 6.0 APPENDIX.
  999.  
  1000.  
  1001. 6.1 If problems persists.......
  1002.  
  1003.  
  1004.  
  1005. The most common feedback from users appears to be setting up
  1006. PCTOR's master clock timing. Once this is done, the user enters
  1007. the "magic" number into the configuration file that is used
  1008. automatically each time the program is started. Only when
  1009. installing the program on another computer will it be necessary
  1010. to reset this timing parameter. 
  1011.  
  1012. Please note that this parameter has noting to do with the speed
  1013. of your processor, or whether you use an 8088 or 486. Its about
  1014. how to program a certain chip (8253/4) on the PC's motherboard.
  1015.  
  1016. Typical symptoms will be that either nothing happens when trying
  1017. to decode a FEC signal, or, the FEC sync is obtained, some text
  1018. is printed, however, synch is lost and only a few words of
  1019. garbage is printed before it starts re-sync. If you have a scope,
  1020. or frequency counter available, try the following (its not
  1021. serious if you do not have access to test equipment - you will
  1022. just have to be a little patient and do some common-sense trial
  1023. and error. It will take a little longer, but you will obtain the
  1024. same end result. Skip the next paragraph if you do not have
  1025. access to test equipment):
  1026.  
  1027. Enter the command menu (Hit ESC) and select the "Y" option. This
  1028. command should toggle the "Td" data pin at 500 Hz. Use the "+"
  1029. and "-" keys to toggle the speed up or down, however, timing
  1030. values above 30 and less than 18 are indicative of possible
  1031. incompatiblities. Most systems work fine with the default of
  1032. timing value of 25. When you have completed the test, return to
  1033. the main display and select STANDBY (F10).
  1034.  
  1035. Tune in FEC mode to a strong FEC broadcast station such as KMI
  1036. WOO, or WLO (see attached list 6.5). Observe the timing indicator
  1037. on the right hand corner of the status line. Notice that it may
  1038. slide slowly. The objective is to have it as stationary or
  1039. indecisive as possible. However, do not be concerned if you
  1040. cannot get a perfect steady display, that is quite normal.
  1041.  
  1042. Vary the timing value, one step at a time using the "+" or "-"
  1043. keys. After changing the clock setting, the previous value as
  1044. well as the new value will be displayed. You MUST then exit the
  1045. command menu for the new settings to become effective. Once back
  1046. to the main display, select STANDBY (F10) and wait for sync to be
  1047. detected. Notice that when you return from the command menu to
  1048. the main menu, you may see some received text being written to
  1049. the receive display. This is text that have been accumulated by
  1050. the low-level decoder and was stored in a system buffer while you
  1051. were using the command menu. This text should be ignored as the
  1052. changed clock setting was not yet in effect. 
  1053.  
  1054.  
  1055. Once the optimal setting has been found, modify the configuration
  1056. file TOR.CNF to include the parameter for your system. Values
  1057. ranging from 0 to 36 is valid. This procedure set the system
  1058. clock close to +/-50ppm for stable AMTOR operation.
  1059.  
  1060.  
  1061.  
  1062. 6.2 What if it still does not work ......
  1063.  
  1064.  
  1065. At this point there remains one question: how "IBM compatible"
  1066. your computer is. Perhaps your computer is quite compatible but
  1067. there may be an interface adapter card that is not. It has been
  1068. found that some video adapters does special emulation, i.e. runs
  1069. one video mode, but allows some other type of equipment to be
  1070. attached, i.e. ATI allows you to run VGA mode, yet allows you to
  1071. use a CGA display. This kind of hardware introduces either wait
  1072. states, or disables the interrupt system at a very low level.
  1073. Since PCTOR needs a stable timing source, there will be a
  1074. conflict for sure.
  1075.  
  1076. PCTOR allows you to minimize these conflicts that are related to
  1077. the video display by allowing the user to disable writing
  1078. directly to the video memory. By selecting the "V" option in the
  1079. command menu thus toggling BIOS on, all video access will be done
  1080. through BIOS calls. The status line is also simplified to reduce
  1081. the overhead. In some cases, this will do the trick. It is also
  1082. possible to reduce the amount of screen-writing activity by
  1083. slowing down the rate that the status line is updated (see 4.2
  1084. "refr:15" ). 
  1085.  
  1086. Another problem that has been experienced with older PC
  1087. compatibles, i.e. 1984 or so, is support chips on the motherboard
  1088. that does not behave like later versions. Although these machines
  1089. may be perfectly capable of running most software, they will not
  1090. be able to keep accurate timing and may not work well with PCTOR.
  1091. If possible, update the 8254 and 8259 chips. Also check the 8250
  1092. UART for the same reason.
  1093.  
  1094. Although there has not yet been reported problems on the use of
  1095. serial/parallel interface cards using ASIC (Application-Specific
  1096. Integrated Circuit) chips, some laptops and recent desktop
  1097. machines are now using them. These ASIC's have varying levels of
  1098. compatibility with the 8250-style chips and some are known to
  1099. present real problems. The author uses both styles without
  1100. problems, however, it is possible that the software may not be
  1101. able to work in all situations. If your problems persist, as a
  1102. last resort, check whether perhaps your system uses one of these
  1103. ASIC's. Feedback on such problems will be appreciated - perhaps a
  1104. solution may be forthcoming.
  1105.  
  1106.  
  1107.  
  1108. 6.3 A few notes on HF modems
  1109.  
  1110. Experience have shown that some modems perform better than
  1111. others. We may divide the class of popular modems roughly into
  1112. three categories (there are a few other types as well):
  1113.  
  1114. (I)   The phase locked loop (PLL),
  1115.  
  1116. (II)  filter type,
  1117.  
  1118. (III) digital signal processing (DSP) type.
  1119.  
  1120. It is the author's opinion that the PLL type of modems are not
  1121. suitable for average HF operations. It is best to avoid this
  1122. approach even with extensive front-end filtering.
  1123.  
  1124. The filter-type modem have been used with much greater success on
  1125. HF. However, there are various kinds of approaches in filter-type
  1126. modems:
  1127.  
  1128. Vintage designs like the ST-5 and ST-6 employed L/C filters and
  1129. are known to work reasonably well, given that some changes are
  1130. made to their low-pass filters (mainly to pass the 100 Hz AMTOR
  1131. modulation rate). 
  1132.  
  1133. Active filter designs such as the DJ6HP will also work quite well
  1134. under fair conditions, however, do not expect too much under
  1135. adverse conditions. Another popular active filter modem is the
  1136. BARTG design. This small modem will work reasonably well too,
  1137. however it lacks front-end bandpass filtering, and has poor post-
  1138. discriminator signal processing. Both these designs are good for
  1139. newcomers.
  1140.  
  1141. Modern good performance filter-type modems use sophisticated
  1142. front end filters in conjunction with well-designed
  1143. discriminators and extensive post discriminator filtering
  1144. circuitry. They generally have excellent dynamic range to handle
  1145. strong signals as well as being able to "dig into the noise" to
  1146. handle weaker signals. They will tolerate some degree of off-
  1147. frequency operation. It also has become popular to monitor analog
  1148. levels of signals within the modem in order to implement "soft"
  1149. error correction techniques. Although this does not necessarily
  1150. mean an increase the level of hardware sophistication, additional
  1151. interfacing and software support is required.
  1152.  
  1153. The DSP approach is still new to HF operation, yet holds a lot of
  1154. promise. There are presently some commercial units available.
  1155.  
  1156. If you are interested in a small, yet sophisticated filter-type
  1157. modem, with "soft" error correction capabilities, please contact
  1158. the author for further details.
  1159. 6.4 Soft error detection and correction
  1160.  
  1161.  
  1162.  
  1163. With the introduction of PACTOR, soft error detection and
  1164. correction entered the domain of HF communications for amateurs.
  1165. The idea of soft error detection and correction has been
  1166. described extensively in the literature, mostly in conjunction
  1167. with high-speed satellite data links. 
  1168.  
  1169. A short introduction to soft error detection and correction, also
  1170. termed "memory ARQ" follows:
  1171.  
  1172. Most HF modems presently in use, does extensive signal processing
  1173. to recover of the transmitted modulation. The output of the modem
  1174. then is a stream of logical bits (zeroes and ones). These bits
  1175. are then further processed by digital processing methods to form
  1176. messages. 
  1177.  
  1178. It is, however, unfortunate that a great deal of useful
  1179. information is lost when logical bits are produced by the modem's
  1180. hardware. One can think of this thresholding as a one-bit analog-
  1181. to-digital (A/D) conversion process (with resulting values zero
  1182. and one). If this A/D conversion could have produced more
  1183. resolution, i.e. eight, 16, or even 256 distinct levels, then it
  1184. would have been possible not only have access to the resultant
  1185. thresholded value, but also the magnitude of the signal at the
  1186. time that it was thresholded. 
  1187.  
  1188. One application where knowledge of this magnitude is useful, is
  1189. AMTOR ARQ mode. During AMTOR ARQ, blocks of three characters are
  1190. transmitted on each chirp. The receiving station analyzes each of
  1191. the three received characters for a possible error, and when an
  1192. error is detected, it chirps back an RQ reply to the transmitting
  1193. station to repeat the last three-character block. It is possible,
  1194. and even probable when conditions are poor, that the
  1195. retransmitted block may again contain an error. This may result
  1196. in several repeated blocks. It is possible to improve on this
  1197. "blind RQ" method by using memory ARQ.
  1198.  
  1199. If the receiving station uses memory ARQ technique, it would have
  1200. stored the A/D values associated with each and every bit of each
  1201. of the three received characters. When an error is detected in a
  1202. retransmitted block, i.e. after an RQ, an error-correction
  1203. algorithm is then used to compute a "confidence" value for each
  1204. character of the bad blocks (over two or more blocks). 
  1205. Subsequent block reconstruction then follows where a
  1206. reconstructed block is made up from highest confidence elements.
  1207. Such a reconstructed block is then error-tested again. More often
  1208. than not, this results in fewer RQ's. PCTOR will show the actual
  1209. statistics of how its doing. For HF conditions a success rate of
  1210. 10% of received blocks in error, is achievable.
  1211.  
  1212.  
  1213. 6.5 Some frequencies for FEC stations for test purposes
  1214.  
  1215.  
  1216.  
  1217. Logged on: Fri Dec 11 1992 22:25:19 on 8431.5 KHz using PCTOR
  1218. V2.02
  1219.  
  1220.  
  1221. AT+T HIGH SEAS RADIOTELEX BROADCAST FREQUENCIES ARE AS FOLLOWS:
  1222.  
  1223. +++++++++++++++++++++++++++++++++++++++++++++++++
  1224. +    ITU CHAN       COAST-TX    AT+T STATION    +
  1225. +    --------       --------    ------------    +
  1226. +      405           4212.5         WOO         +
  1227. +      412           4215.5         WOM         +
  1228. +      416           4217.5         KMI         +
  1229. +                                               +
  1230. +      626           6326.5         KMI         +
  1231. +      628           6327.5         WOM         +
  1232. +      629           6328.0         WOO         +
  1233. +                                               +
  1234. +      831           8431.5         KMI         +
  1235. +      833           8432.5         WOM         +
  1236. +      834           8433.0         WOO         +
  1237. +                                               +
  1238. +     1303          12630.0         KMI         +
  1239. +     1305          12631.0         WOM         +
  1240. +     1307          12632.0         WOO         +
  1241. +                                               +
  1242. +     1728          16870.0         KMI         +
  1243. +                                               +
  1244. +     1818          19689.5         KMI         +
  1245. +                                               +
  1246. +     2299          22425.5         WOM         +
  1247. +++++++++++++++++++++++++++++++++++++++++++++++++
  1248.  
  1249.  
  1250.  
  1251. WX AND HIGH SEAS INFORMATION SCHEDULED BROADCASTS ARE AS FOLLOWS:
  1252.  
  1253. STATION      WX           INFORMATION
  1254. -------  ------------    --------------
  1255.   KMI    ODD  UTC HR+20   EVEN UTC HR+20
  1256.   WOM    EVEN UTC HR+40   ODD  UTC HR+40
  1257.   WOO    EVEN UTC HR+20   ODD  UTC HR+20
  1258.  
  1259.  
  1260.                                 6.6 Signal analysis module
  1261.  
  1262.  
  1263.  
  1264. Besides the benefits gained by memory ARQ, useful time domain
  1265. signal analysis is possible especially when coming across an
  1266. unknown signal. Time and frequency domain analysis software are
  1267. provided as an external executable program that is accessible via
  1268. a hot key from PCTOR. Acquisition of signal data is then
  1269. initiated and interfacing with the signal processing program is
  1270. relatively smooth and unintrusive. 
  1271.  
  1272. Two graphical displays are shown. One panel shows the actual
  1273. analog signal with its software-thresholded counterpart, the
  1274. other panel shows the frequency domain (RMS power spectrum). A
  1275. software controlled cursor (using the left/right arrow keys),
  1276. allows inspection of power spectral peaks, while different levels
  1277. of magnification of the analog signal is user selectable (using
  1278. the up arrow key). Continuous conversions are performed while the
  1279. ALT key is held down. When the ALT key is up, the present state
  1280. of the graphs are frozen.
  1281.  
  1282. Unfortunately this type of work is only feasible on faster class
  1283. machines. A 386/25 with math co-processor or a 486 processor is a
  1284. pleasure to use. The signal processing software, however, has
  1285. been tested on a 8 Mhz XT without math co-processor where it took
  1286. several minutes to run to completion. Presently only Hercules,
  1287. EGA, and VGA display adapters are supported.
  1288.  
  1289. 6.8 DSP modem
  1290.  
  1291.  
  1292. The advantages of DSP technology was already realized in the
  1293. PCTOR's early days. At that time both hardware and the
  1294. mathematics for applying DSP algorithms was not available.
  1295. Affordable DSP hardware and the development of DSP modem software
  1296. now makes the application of this technology very attractive.
  1297. Besides being more cost-effective than its earlier analog
  1298. counterparts, very high performance is possible. Being software
  1299. upgradable, future developments are made relatively simple.
  1300.  
  1301. The DSP modem firmware available for use with PCTOR is for usage
  1302. on RTTY/ASCII, AMTOR, PacTOR, and HF Packet. The modem hardware
  1303. is based on a TI 320C26 40 MHz and 14-bit codec. Communication
  1304. with the DSP is though the same RS232 port that PCTOR uses. All
  1305. firmware is downloaded to the DSP from the PC host. 6.8 PCTOR upgrade history (since 2.03)
  1306.  
  1307.  
  1308. Version 2.03
  1309.  
  1310. 1) Supports baudot and ascii receive/transmit (baudot has the
  1311. "diddle" feature). This includes the "O" and "P" options in the
  1312. main menu to change modes of operation and transmission speed
  1313. respectively. The PC's UART is used for this purpose and thus
  1314. requires signals be routed to and from the uart appropriately.
  1315.  
  1316. 2) UTC or local time may be optionally be selected. 
  1317.  
  1318. 3) Either word-edit or character keyboard modes may be selected  
  1319. (previously word-edit was standard). See the "K" option in the  
  1320. main menu..
  1321.  
  1322. 4) F4 now also terminates mode-L
  1323.  
  1324. 5) Some minor enhancements and bugs were fixed, i.e.
  1325. - Reading the receive mask incorrectly from the .CNF file,
  1326. - Cleanup of the CR/LF sequence associated with F5 usage,
  1327. - Cleanup of the display when using a DOSSHELL (F8),
  1328. - Better validation of setup parameters from the .CNF,
  1329. - Allow the usage of "?" for help in the main menu.
  1330.  
  1331.  
  1332. 6) Optional software support for a companion modem. This includes
  1333. an analog mark/space tuning display on the PCTOR status line. It
  1334. also allows future development of "soft" error detection and
  1335. correction using "memory ARQ". This development is needed to 
  1336. fully support PACTOR.
  1337.  
  1338. 7) If you are not interested in ascii/baudot operation, no
  1339. changes are needed in your RS232 hardware interface to use
  1340. version 2.03. If you are interested in using ascii/baudot,
  1341. however, please see 3.0 for additional interfacing requirements.
  1342. If you are further interested in using the software tuning
  1343. indicator display feature, the companion modem is required as
  1344. well as a parallel port interface.
  1345.  
  1346. 8) Older versions of PCTOR (pre-1.17) used a terminate stay
  1347. resident (TSR) program, called TORBIOS. PCTOR now incorporates
  1348. all low-level routines previously performed by the TSR.
  1349.  
  1350. 9) ALT-A "spawns" a special module for modulation analysis. This
  1351. involves taking 1024 data samples from the modem's low pass
  1352. filter stage, performing an FFT and displaying both analog and
  1353. frequency domain waveforms. This allows future development of
  1354. analysis of received audio. IMPORTANT NOTICE: Do not attempt this
  1355. function on a 8088 or 80286 type processor - it works but takes
  1356. several minutes to perform the calculations. Only a 386/25 with
  1357. co-processor or a 486/33 can do justice to this analysis. At this
  1358. time, only EGA, VGA, and Hercules compatible displays are
  1359. supported.
  1360.  
  1361. 10) ALT-L "spawns" any program the user wishes to execute when
  1362. this key is pressed. Typically this would be a logging program.
  1363.  
  1364. 11) The log filename and name of the ALT-L user program is
  1365. displayed on the status line.
  1366.  
  1367. 12) There is an option to enable memory ARQ (MARQ) for AMTOR.
  1368. When active, "ERR" is displayed with a green background instead
  1369. of the usual red background when processing error blocks. The
  1370. MARQ algorithm is similar to that used for PACTOR. This first
  1371. level of memory ARQ is based on "hard bits" and will work with
  1372. any modem. It does not require the special modem. Future levels
  1373. of memory ARQ will also make use of "soft bits".
  1374.  
  1375. 13). The help screen "ALT-H" is expanded to include an
  1376. explanation of the different flags associated with various
  1377. options.
  1378.  
  1379.  
  1380.                                         Version 2.04
  1381.  
  1382. 14) ALT-X may now be used for quick exit (tnx SV1BDS).
  1383.  
  1384. 15) Command.com (the dosshell) is now located through the COMSPEC 
  1385. environment variable (tnx SV1BDS).
  1386.  
  1387. 16) All files, i.e. TOR.CNF or *.TOR files are now located 
  1388. through the environment variable "PCTOR" (please see 5.0 for 
  1389. application notes) (tnx SV1BDS).
  1390.  
  1391. 17) Baudot and ascii operations now echo transmitted text to the 
  1392. receive screen.
  1393.  
  1394. 18) Any baudrate not greater than 300 bps is allowed on
  1395. baudot/ascii, however, only integer values must be entered. The
  1396. amateur standard of 45.45 baud is a special case where a baudrate
  1397. of 45 will be interpreted as meant to be 45.45 bps (tnx SV1BDS).
  1398.  
  1399. 19) The delay parameter called TX-DELAY have now been split into
  1400. two parts, TD (transmitter turn-on delay), and CD (control delay)
  1401. (for further details please see section 4.2 on customizing the
  1402. configuration file) (acknowledgement to Bill Henry, K9GWT, QST
  1403. June 1992, p.34-45).
  1404.  
  1405. 20) PCTOR now dynamically locates a free user-interrupt slot in
  1406. the range 60h-67h. Previously 60h was hooked, however this may
  1407. have caused a problem is some instances. If there is none
  1408. available, the user will be notified and prompted, otherwise
  1409. installation will proceed as usual without any intervention.
  1410.  
  1411. 21) The special option indicator symbols on the upper command
  1412. line started crowding the time clock digits, so they were moved
  1413. down a line to the right of the PCTOR logo.
  1414.  
  1415. 22) The machine class (8088/86, v20/30, 80186, 80386/80486) is
  1416. detected at startup. This may be used in future versions of the
  1417. software to customize the time-critical software and available
  1418. options to be run on the hardware.
  1419.  
  1420.  
  1421. Version 2.07
  1422.  
  1423. 23) Bug fixes in the BAUDOT/ASCII typeahead as well as changes to
  1424. the operation of the typeahead buffer in AMTOR. Please note that
  1425. all the keyboard data, the time key (ALT-T), and message buffers
  1426. (ALT-1 thru 9) will now be collected in the typeahead buffer in
  1427. the order that it was entered. This should work out better as you
  1428. will be able to mix text for transmission either from buffers,
  1429. and/or data from the keyboard without first waiting for the other
  1430. to buffer to empty out.
  1431.  
  1432. 24) Printer log feature toggled on/off using ALT-O. 
  1433.  
  1434. 25) All traffic sent using the "send files" (ALT-F) will now also
  1435. be logged to disk.
  1436.  
  1437.  
  1438.                                        Version 2.08/9
  1439.  
  1440. 26) Bug fixes associated with typeahead when ALT-B was used.
  1441.  
  1442. 27) Bug fix in exception handler associated with printer OFFLINE.
  1443.  
  1444. 28) F4, when used in ASCII/BAUDOT will terminate transmission
  1445. only when the typeahead buffer is empty.
  1446.  
  1447.  
  1448. Version 2.11
  1449.  
  1450. 29) Does not require that DTR be connected any more. All data
  1451. output is now routed through TD.
  1452.  
  1453. 30) Special embedded control characters  and  controls the PTT.
  1454. When using these, a submitted buffer will take control of the
  1455. PTT. For an example, please see "test.tor".
  1456.  
  1457.  
  1458. Version 2.12
  1459.  
  1460. 31) When a user backspaced over more than one word in the
  1461. typeahead buffer, "WORD MODE" got confused. This bug was fixed as
  1462. well as cleaning up backspacing back to previous lines.
  1463.  
  1464.  
  1465. Version 2.13 
  1466.  
  1467. 32) Fix "getting one behind" during buffer load. Don't backspace
  1468. when buffer is empty.
  1469.  
  1470.  
  1471. Version 3.00
  1472.  
  1473. 33) Introduce color user-definable color scheme.
  1474. 34) Scroll back receive data area via disk file
  1475. 35) Output signal via BOTH TxD and DTR; DTR with usual            
  1476. OUTMASK option.
  1477.  
  1478.  
  1479. Version 3.01/2
  1480.  
  1481. 36) F8 should not use closeall, but close logfile only.
  1482. 37) After ALT-P, restore operating mode
  1483. 38) It appears that INMASK settings that inverts DTR also
  1484. inhibits, BAUDOT/ASCII. Reset DTR setting for Baudot/ASCII
  1485.  
  1486.  
  1487. Version 3.03
  1488.  
  1489. 39) ALT_M to access DSP modem control
  1490. 40) Sort *.tor buffers alphabetically
  1491. 41) ALT_S sends a file continuously
  1492. 42) ALT_Y shells out to Baycom
  1493. 43) ALT_D to toggle RTTY diddle
  1494. 44) Two-page help screen
  1495. 45) Remove INMASK/OUTMASK options
  1496.  
  1497. Version 3.03c
  1498.  
  1499. 46) Restore the operating after returning from PC-PACTOR, i.e.   
  1500. after usage of ALT-P.
  1501. 47) Message buffers now sorted alphabetically. 
  1502. 48) RTTY diddle control. Selectable in the configuration file,  
  1503. toggled using the ALT-D key.
  1504. 49) ALT-P hot keys to PC-PACTOR.
  1505. 50) ALT-Y hot keys to Baycom (note: Baycom is a copyrighted  
  1506. program by DL8MBT and DG3RBU - it is not supplied as part of  
  1507. the PCTOR package).
  1508. 51) For users of the DSP modem, ALT-M brings up the DSP modem  
  1509. submenu. The user can select a modem of RTTY, AMTOR, PacTOR, or
  1510. HF Packet.
  1511. 52) ALT-S sends a file continuously.
  1512. 53) Receive-only operation. This is selected from the command
  1513. line by inluding /R. 6.9 Newsletter December 1992
  1514.  
  1515.  
  1516.  
  1517. With 1992 drawing to a conclusion, it may be worthwhile to
  1518. reflect on some things accomplished with PCTOR and contemplate
  1519. future milestones. 
  1520.  
  1521. This newsletter will concentrate on the origins of PCTOR its
  1522. present status, and some thoughts on where things will be going
  1523. in the near future. 
  1524.  
  1525. For those not too familiar with the software - PCTOR is a
  1526. complete communications package for the PC or close compatibles.
  1527. Its main purpose was to encode/decode AMTOR (SITOR) using the
  1528. PC's on-board hardware in conjunction with a simple external HF
  1529. modem, however rtty modes are now also supported. The interface
  1530. with the HF modem is through a COM port. A hardware TNC is thus
  1531. not required as all decoding is performed in software right on
  1532. the PC. PCTOR is available from the library 6 area of the HamNet
  1533. forum on CompuServe.
  1534.  
  1535. PCTOR has grown and undergone several revisions over the past
  1536. year. Presently version 2.03 is the latest. The user base has
  1537. also grown over the past year and support has come from all over
  1538. the world. I am extremely grateful for your interest and support.
  1539. As to all those suggestions and bug reports from users - your
  1540. contributions have been valuable. Some of your ideas have since
  1541. been implemented, others are in the queue.
  1542.  
  1543. By time that you receive this newsletter, a pre-release of my
  1544. PACTOR program for the PC will be available. This version of
  1545. PACTOR is for decoding and reading of PACTOR traffic and will
  1546. automatically decode 100/200 baud ascii or Huffman text on-the-
  1547. fly. This includes PACTOR "ARQ" and "UNPROTO" modes. Please check
  1548. CompuServe HamNet library area 6 or send me a formatted disk and
  1549. SASE mailer for a free Shareware copy.
  1550.  
  1551. 6.8.1 PCTOR - some history.
  1552.  
  1553.  
  1554.  
  1555. During 1978 I met Alan G3RSP/MM, who was maritime mobile on a
  1556. tanker en route to the Persian gulf. I was then involved in
  1557. operating an rtty SELCAL station at that time with the call
  1558. ZS1HF. We had many interesting QSO's on every occasion that his
  1559. ship sailed around the Cape of Good Hope. As a result of these
  1560. contacts, I was introduced to Peter Martinez, G3PLX and his early 
  1561. AMTOR developments. At that time, there was only G3PLX and G3YYD
  1562. on HF, with Alan using the ship's radio to communicate with Peter
  1563. on AMTOR.
  1564.  
  1565. Fortunately for me, I was using the same type of microprocessor
  1566. chip that Peter was using - the Motorola M6800. Peter supplied
  1567. the source code for AMTOR and with some further work, I was able
  1568. to decode AMTOR on my homebrew 6800 computer. Everything needed
  1569. to be made yourself - the modem, the decoder, and of course the
  1570. modifications to the HF transceiver to improve changeover time.
  1571. By the time that I had my first AMTOR QSO, I was ranked amateur
  1572. number 15 or so on HF AMTOR - just an indication how fast things
  1573. were happening.
  1574.  
  1575. My own experimental efforts amounted to a single board system,
  1576. complete with filter-type modem and tuning display. This system
  1577. could handle baudot, ascii (at various rates), CW with automatic
  1578. speed tracking, and AMTOR mode A, B and L. I called it a
  1579. universal communications processor (UCP). Details were published
  1580. for an amateur club project, however few systems were actually
  1581. built. This system served my needs very well for several years
  1582. and was a test bed for exploring many new ideas.
  1583.  
  1584. During 1983 I came to Oregon as a visiting scientist, wrote the
  1585. FCC examination, got my ticket and in due course as KC7WW, was
  1586. listening for AMTOR. I subsequently met Bill, K4PA, who was
  1587. experimenting with AMTOR as well, imagine - on a KIM
  1588. microprocessor system! Bill supplied all the specifics on getting
  1589. the necessary FCC permission to operate AMTOR in the USA. At that
  1590. time this involved obtaining special temporary authority (STA). 
  1591.  
  1592. It was about 1984 that I learned of Paul, AD7I's Z-AMTOR, and
  1593. shortly after that commercial developments from AEA and others.
  1594. The publication of several technical articles followed.  The
  1595. introduction of the multi-mode TNC as a black box appliance
  1596. introduced many new enthusiasts to the world of digital
  1597. communications.
  1598.  
  1599. During 1990 I started translating the M6800 code to 8088 Assembly
  1600. language. The old hardware M6800 was just too cumbersome and
  1601. inflexible to compete with the ubiquitous PC. Making AMTOR work
  1602. on the PC's hardware was a challenge to say the least. With
  1603. modern software tools, however, things became easier to debug
  1604. than development work on the old embedded system.
  1605.  
  1606. The first release of PCTOR was version 1.03, which was uploaded
  1607. to CompuServe Hamnet library 6 during October 1991. It has been
  1608. updated several times since then.
  1609.  
  1610. It is with fond memories that I think of the early days. I am
  1611. indebted to those that helped me along the way - in appreciation
  1612. to the memory of Irv Hoff from whose work I learned about HF
  1613. modems and much appreciation to Peter Martinez who shared the
  1614. secrets of making AMTOR possible on a microprocessor. 
  1615.  
  1616. 6.8.2 The present status of PCTOR
  1617.  
  1618.  
  1619.  
  1620. PCTOR consists of two major components: a low-level interface
  1621. that handles critical timing at the hardware level, and a user
  1622. interface. Previously the low-level interface and user interface
  1623. was implemented as two separate modules, combining them made a
  1624. lot of sense and simplified things for new users. 
  1625.  
  1626. The user interface follows the split screen format of operation 
  1627. that has become standard for this kind of communications
  1628. operations. Data received through the software decoder is
  1629. displayed in the upper window while the operator's keyboard
  1630. entries are displayed in the lower window. In AMTOR mode, the
  1631. display of characters on the upper display is actually an echo of
  1632. what is being received at the remote station. This feedback helps
  1633. an operator judge the state of a link - how well the flow is
  1634. progressing, what has been sent already and what else is still
  1635. waiting to be sent. This is one of the built-in characteristics
  1636. of AMTOR.
  1637.  
  1638. Two status lines keeps the user informed of real-time operational
  1639. status of the digital translator. The main status line is on the
  1640. very top of the display. It shows, besides the link status, other
  1641. useful parameters such as path propagation delay, current
  1642. callsign and selcal, and the current status of some
  1643. user-controlled flags such as unshift-on-space (UOS), 
  1644. upper/lower case operation, and high reliability. The latest
  1645. symbol that has been added is "δ", that is used to indicate
  1646. whether "memory ARQ" is active or not. More about this feature
  1647. later.
  1648.  
  1649. The real-time clock on the upper status line may now be
  1650. programmed in either local time or UTC.
  1651.  
  1652. Part of the upper status line and a small portion of the upper
  1653. split screen display is used for an on screen tuning indicator.
  1654. This option is available only when a special modem is used with
  1655. PCTOR. Details on this modem follow in the text below.
  1656.  
  1657. The lower status line is located between the upper text display
  1658. area and the lower text display area. It contains the name of the
  1659. user's log file, logging program's name, and shows the current
  1660. size of the user's keyboard buffer, i.e. the number of characters 
  1661. in the type-ahead buffer. This logging program is a new feature
  1662. that was added to allow for the execution of a user-specified
  1663. program when ALT-L is pressed. This allows ready access to a
  1664. logging program via a hot key from PCTOR while the decoder
  1665. remains running in the background. The user, however, has to
  1666. supply his own logging program.
  1667.  
  1668. A general "help" function is available through the ALT-H key
  1669. where function key assignments, as well an explanation of the
  1670. indicator symbols are given.  
  1671.  
  1672. In addition to AMTOR modes ARQ, FEQ, and "listen", ascii and
  1673. baudot is now also supported at 45.45, 50, 75, and 110 baud.
  1674. Please note that in order to use ascii and baudot, additional
  1675. interface wiring is required.
  1676.  
  1677. To further simplify operations, a pop-up menu system allows the
  1678. user to change some functional parameters on-line. This pop-up
  1679. menu system is complete with its own help function where all
  1680. available features that may be accessed through the pop-up menu
  1681. are listed. The latest additions to this menu are "O" and "P"
  1682. options that allows the toggling between AMTOR, baudot, and ascii
  1683. modes, and alters the baud rate for baudot or ascii modes of
  1684. operation.
  1685.  
  1686. In order to customize the state of options and other special
  1687. items, a user-prepared configuration file is read when PCTOR
  1688. starts up. The most recent keywords that have been added are
  1689. LOGPROG, REFR, TUNING, WORD, and MARQ. LOGPROG allows the
  1690. specification of the user's logging program. REFR sets the
  1691. refresh rate of the status displays. TUNING activates the
  1692. on-display bargraph tuning displays. WORD enables word-edit
  1693. keyboard entry mode. MARQ activates the memory ARQ algorithm.
  1694. Some of these features have been requested by users. Please note
  1695. that TUNING and MARQ assumes that special hardware is present in
  1696. the user's modem. More about this later in this newsletter.
  1697.  
  1698. Further general features are available. Off-the-air received
  1699. traffic may be captured in a text file. Automatic and manual
  1700. identification and time-stamping facilities are provided. Sending
  1701. of text files over the air is possible in all modes, recalling of
  1702. canned buffers, i.e. CQ call, or brag tape, for transmission, at
  1703. a keystroke.
  1704.  
  1705. PCTOR supports the APlink protocol for full upper and lower case
  1706. ascii. This is based on the "PLX"-method of upper/lower case with
  1707. extensions as developed by Victor Poor (W5SMM).
  1708.  
  1709. A "high" reliability option is included to improve received data
  1710. integrity beyond the 3/4 (zeroes/ones) ratio test used in AMTOR.
  1711.  
  1712. The Unshift-on-space (UOS) option have been available in earlier
  1713. versions of PCTOR. It is particularly useful for baudot
  1714. operation. This option switches the baudot case shift to upper
  1715. case at the reception of a space character. Baudot is
  1716. particularly prone to noise and often ends up in the wrong
  1717. letter/figs case shift. UOS, resets the case to letter shift each
  1718. time a space character is received. Based on the general
  1719. assumption that a space character is mostly used to separate
  1720. words, letter case is assumed. This method more often than not
  1721. will allow better print under adverse conditions. Do not be
  1722. concerned with all this case shifting if it does not make
  1723. sense.It really comes from an earlier era of mechanical
  1724. teleprinters. Most of these issues are now handled by the
  1725. software anyhow.
  1726.  
  1727. Baudot operators have all sorts of tricks to "help the print
  1728. along", especially when conditions are marginal. The baudot
  1729. "diddle" is one of them. This amounts to sending "idle"
  1730. characters when the keyboard buffer is empty. These idle
  1731. characters are carefully chosen to be either the ITA2 characters
  1732. letter, figures, or in some cases "blank". PCTOR uses diddle in
  1733. baudot mode.
  1734.  
  1735. As mentioned above, a new modem with special features has been
  1736. under development for usage with PCTOR. This development was
  1737. essential to support new modes such as PACTOR. At the same time,
  1738. however PCTOR's performance was enhanced through the use of
  1739. sophisticated digital signal analysis. This modem is not a
  1740. digital signal processing unit, however it is quite sophisticated
  1741. and a good performer. The hardware lineup consists of a
  1742. highpass/lowpass front end, bi-quad discriminator, active
  1743. rectification, and low pass filter optimized for 200 Hz
  1744. modulation rate. An 8-bit A/D convertor is included that is used
  1745. by the software for analyzing recovered modulation signal in the
  1746. memory ARQ algorithm. A ten element bargraph display is provided
  1747. as a tuning indicator. Further details of the modem, and its
  1748. availability in kit form, will be published shortly.
  1749.  
  1750. Memory ARQ is an algorithm for intelligent error correction
  1751. during ARQ (PCTOR has an option that allows AMTOR to make use of
  1752. it as well). Briefly, during reception of AMTOR data blocks, the
  1753. algorithm saves not only logical states of bits from the modem's
  1754. slicer stage, but also saves the actual magnitude of the
  1755. recovered modulation signal levels associated with each bit. This
  1756. additional information thus indicates a confidence level
  1757. associated with each logic level. When two or more blocks are in
  1758. error, the algorithm proceeds to examine the confidence levels of
  1759. individual bits for possible "reconstruction" of a good block
  1760. from erroneous blocks. The actual details of the algorithm is
  1761. somewhat more complex than this brief introduction. 
  1762.  
  1763. Besides the benefits gained by memory ARQ, useful time domain
  1764. signal analysis is possible especially when coming across an
  1765. unknown signal. Time and frequency domain analysis software are
  1766. provided as an external executable program that is accessible via
  1767. a hot key from PCTOR. Acquisition of signal data is then
  1768. initiated and interfacing with the signal processing program is
  1769. relatively smooth and unintrusive. 
  1770.  
  1771. Two graphical displays are shown. One panel shows the actual
  1772. analog signal with its thresholded counterpart, the other panel
  1773. shows the frequency domain (RMS power spectrum). A software
  1774. controlled cursor (using the left/right arrow keys), allows
  1775. inspection of power spectral peaks, while different levels of
  1776. magnification of the analog signal is user selectable (using the
  1777. up arrow key). Continuous conversions are performed while the ALT
  1778. key is held down. When the ALT key is up, the present state of
  1779. the graphs are frozen.
  1780.  
  1781. Unfortunately this type of work is only feasible on faster class
  1782. machines. A 386/25 with math co-processor or a 486 processor is a
  1783. pleasure to use. The signal processing software, however, has
  1784. been tested on a 8 Mhz XT without math co-processor where it took
  1785. several minutes to run to completion. Presently only Hercules,
  1786. EGA, and VGA display adapters are supported.
  1787.  
  1788.  
  1789.  
  1790. 6.8.3 Future developments
  1791.  
  1792.  
  1793.  
  1794. The modem development is in final stages of printed circuit
  1795. layout. The details will be appearing shortly in one of the
  1796. amateur or electronic hobbyist journals. A kit of parts will be
  1797. also offered.
  1798.  
  1799. There has been several requests for PACTOR capability. This will
  1800. be the next major upgrade. Although I have been experimenting and
  1801. testing PACTOR, the special modem was required to implement true
  1802. memory ARQ. Without the A/D convertor addition, true memory ARQ
  1803. is not possible, regardless of what you may have been told by
  1804. others. If you have wondered of what PACTOR is like - my
  1805. experience has been that it is really fun to operate when
  1806. conditions are good. If you have ever tried HF packet, PACTOR is
  1807. a great improvement. However, when conditions are marginal,
  1808. performance degrades rapidly, delays become uncomfortably long,
  1809. and not even memory ARQ seem to be of much use. This is where you
  1810. wish that it could have reverted to AMTOR. I am of the opinion
  1811. that it may become popular with some higher powered
  1812. traffic-handling stations. This is, however, my own opinion.
  1813.  
  1814. Several requests were for the inclusion of embedded control
  1815. functions in text files. For example: a user wants to send an
  1816. automatic CQ while contesting: A text file is prepared that
  1817. contains the body of the CQ message including some special
  1818. control functions. The text file is submitted for transmission in
  1819. a similar same way than a buffer message is sent. The following
  1820. pseudocode shows the procedure.
  1821.  
  1822.  
  1823.  
  1824. Script submission for automatic transmission
  1825.  
  1826. 1)  START:
  1827. 2)        <initiate FEC transmission>
  1828. 3)        CQ CONTEST DE KC7WW KC7WW (KCWW)
  1829. 4)        CQ CONTEST DE KC7WW KC7WW (KCWW)
  1830. 5)        AR PSE ARQ KN
  1831. 6)        <terminate FEC transmission>
  1832. 7)        <wait for an ARQ link (timeout=30 seconds)>
  1833. 8)        <if it timed out> go back to START
  1834. 9)        <cancel automatic mode and enter normal keyboard mode>
  1835.  
  1836. Note: F7 flushes the text buffer, F10  forces standby mode.
  1837.  
  1838. This simple example shows several kinds of control symbols, i.e.
  1839. LABELS, start/stop FEC transmission, and wait with timeout - a
  1840. branch address for timeout is supplied. A small language set to
  1841. support some of PCTOR's built-in features will be developed. The
  1842. script will be parsed for syntax and semantics before actual
  1843. submission occurs.
  1844.  
  1845.  
  1846. There have been several requests for running PCTOR in a
  1847. multitasking environment. This is of course possible, given that
  1848. PCTOR has guaranteed one millisecond interrupt rate for low level
  1849. services. Although this timing requirement hardly impacts
  1850. performance on a 386 or 486 type machine, it is unfortunate that
  1851. some of the popular multitaskers require the same hardware that
  1852. PCTOR uses for their pre-emptive scheduling. In the end someone
  1853. usually looses out. Windows 3.1 on the other hand, being a
  1854. co-operative multitasker, does tolerate this kind of intervention
  1855. but is not considered "well behaved". It is uncertain what future
  1856. versions of Windows will allow. It will be logical to develop a
  1857. DLL that contains the low level services as an embedded device
  1858. driver that will guarantee such high priority interrupts. The
  1859. PCTOR user interface will then be using the familiar Windows CUA
  1860. format.
  1861.  
  1862. I apologize for the inadequacies of the documentation, especially
  1863. for newcomers to the digital modes. It is my impression that most
  1864. new users either had some earlier experience with AMTOR, or was
  1865. very knowledgeable and capable of putting together all the
  1866. required bits and pieces. There appears to be a lack of the
  1867. basics for AMTOR, but also what these signals sound like. So,
  1868. this is perhaps one area that hopefully could be improved. It
  1869. also appears that a complete bibliography for reference purposes
  1870. would be helpful.
  1871.  
  1872. The inclusion of more digital signal processing is a possibility.
  1873. Not only could we benefit from noise reduction algorithms but
  1874. also from DSP modems that has been tailored for optimum
  1875. performance. This approach uses software to adapt filter
  1876. parameters and usually results in really sharp filters. An
  1877. external dedicated DSP approach, or perhaps a low-cost sound
  1878. board could be used. This kind of development is very
  1879. challenging, yet holds promise for the future. 
  1880.  
  1881. The baudot and ascii mode presently lacks "autostart" and "anti-
  1882. space" facilities. If anyone is interested in these features,
  1883. digital equivalents are possible that works quite well.
  1884.  
  1885. Work on PCTOR has always been a challenge and very rewarding. The
  1886. order that features are implemented is dictated mostly by what
  1887. available time I have at hand, the hardware requirements, and
  1888. often doing the fun things first. A lot of time is also spent on
  1889. improving things, often fine tuning the time-critical parts, or
  1890. fixing irritating bugs.
  1891.  
  1892. Should there perhaps be something that you consider needing
  1893. attention, please let me know and we can see what could be done
  1894. about it. 
  1895.  
  1896. To contact me, you may leave an e-mail message for me on
  1897. CompuServe (70730,3472), or leave a message at WA8DRZ via packet
  1898. or Aplink. 
  1899.  
  1900.                 KC7WW @ WA8DRZ.#NOCAL.CA.USA
  1901.  
  1902. If all else fails - write to me at the address below.
  1903.  
  1904. 6.10    1993 Newsletter
  1905.  
  1906.  
  1907. This newsletter is to update registered users and those
  1908. interested in PCTOR and PC-PACTOR on developments during 1993.
  1909. Some background will be discussed and future trends also
  1910. presented.
  1911.  
  1912. I thank those from whom I have heard over the past year. Your
  1913. contributions and support are always greatly appreciated.
  1914.  
  1915.  
  1916.  
  1917.        ┼ This issue of the newsletter is dedicated in memory
  1918.        of Pim Woest, PA3AGG. Pim was one of the first to
  1919.        experiment with PCTOR - he became a silent key on
  1920.        January 31st, 1993. We will miss him.
  1921.  
  1922.  
  1923.  
  1924. Newsletter Summary:
  1925.  
  1926. 1. PCTOR
  1927. 2. PC-PACTOR
  1928. 3. HF Modem Developments
  1929. 4. Future Enhancements
  1930.  
  1931.  
  1932.  
  1933. 1. PCTOR
  1934.  
  1935. What is it? For those not too familiar with the software: PCTOR
  1936. is a complete amateur radio communications package for the PC or
  1937. close compa-tibles for operating AMTOR (SITOR), RTTY, and ASCII.
  1938. An external HF modem is required to convert received audio to COM
  1939. port signals (RS232 levels). As decoding is performed in software
  1940. right on the PC, there is no need for a hardware TNC.
  1941.  
  1942. The 1992 newsletter covered software up to version 2.03 (included
  1943. in PCTOR documentation). PCTOR has grown and undergone several
  1944. revisions over the past year. Versions 2.04 - 2.08 included
  1945. several bug fixes and improvements for a cleaner interface with
  1946. DOS. 
  1947.  
  1948. When the HF analog modem, AN-93, became available, memory ARQ for
  1949. AMTOR and an on-screen tuning display, was added (please see
  1950. section 3 on: HF modems). 
  1951.  
  1952. Version 3.0 introduced a scrollable receive display and user-
  1953. definable screen colors. 
  1954.  
  1955. Version 3.03 is currently under development. It includes support
  1956. for a new DSP modem and allows "hot keys" to operate PC-PACTOR or
  1957. HF packet from PCTOR. Additional features for customization of
  1958. the startup file includes selection of the operating mode and
  1959. baud rate. For SWL listeners, transmit features may now be
  1960. disabled and the receive screen extended to fully use the
  1961. additional display lines.
  1962.  
  1963. There has been considerable confusion over which RS232 signals
  1964. are used to transmit data. This came about in an effort to
  1965. simplify the hardware interface: It was found that AMTOR could
  1966. use the "break" mechanism to send data through the "Td" line.
  1967. This simplified the interface to four lines, i.e. Rd/DCD - for
  1968. input signals, and Td/RTS for output signals. Unfortunately, this
  1969. did not work with some older serial ports. For compatibility
  1970. sake, both Td and DTR was then made available for data output.
  1971. When the DSP project came along, DTR was needed for DSP control.
  1972. That is why version 3.03 now only supports serial ports that can
  1973. switch data fast enough through Td.
  1974.  
  1975.  
  1976. 2. PC-PACTOR
  1977.  
  1978.  
  1979. What is it? PC-PACTOR is a program for the PC to decode, read and
  1980. transmit PACTOR traffic. It will automatically decode 100/200
  1981. baud ASCII or Huffman-compressed text.  
  1982.  
  1983. Version 0.03 was released in December 1992 for monitoring PacTOR
  1984. traffic only. I have since had a lot of requests for a full
  1985. transmit version of the program. The current version of PC-PACTOR
  1986. is 0.16 and includes the ASCII FEC transmit capability, traffic
  1987. logging and file transmission. Version 0.20 is presently under
  1988. development for full ARQ capability. 
  1989.  
  1990. I do ask your patience as there are some major implementation
  1991. issues to be solved. First is to achieve the 15ppm timing
  1992. requirement. The PC clock was never designed for this kind of
  1993. accuracy. 
  1994.  
  1995. PacTOR is based on a proprietary standard developed by SCS,
  1996. Germany. In order to receive support from SCS, a license fee has
  1997. to be paid. Presently, this is why all other amateur radio
  1998. implementations of PacTOR are licensed. SCS, however, gave
  1999. permission to develop a Shareware version but indicated that no
  2000. support would be available. 
  2001.  
  2002. Things went fairly smooth during development until it became
  2003. clear that there are a number of undocumented exceptions that
  2004. needed clarification. To date I have not been able to obtain all
  2005. the necessary details from SCS to resolve these outstanding
  2006. issues. I will persist, however, in pursuing these on my own,
  2007. though it may take a little longer.
  2008.  
  2009. Please note that version numbers below 1.00 indicates
  2010. "experimental" status and should be considered that.
  2011.  
  2012. 3. HF Modem Developments
  2013.  
  2014.  
  2015. Due to numerous requests for a simple yet good performing HF
  2016. modem for use with PCTOR and PC-PACTOR, the AN-93 was developed.
  2017. The design is a conservative active filter approach using 170 Hz
  2018. shift with 2125/2295 Hz tones for data rates to 200 baud. The
  2019. unit is intended for direct FSK operation. The computer interface
  2020. is through a serial port that is compatible with PCTOR.
  2021.  
  2022. A 10-segment bargraph display is provided for tuning purposes. In
  2023. addition, an A/D convertor is provided that samples recovered
  2024. modulation for  implementation of soft memory ARQ by the PC. In
  2025. addition, the A/D signal is used for an on-screen tuning display.
  2026. The A/D convertor interfaces to the PC through a parallel port
  2027. interface.
  2028.  
  2029. To those interested, there still remains a few AN-93 kits still
  2030. at $135 plus postage.
  2031.  
  2032. A considerable amount of effort was spent on studying DSP math,
  2033. algorithms, and hardware. This led to the development of a
  2034. prototype DSP unit for HF digital. A small production of these
  2035. units followed. This was known as the DSP-100 project. Although
  2036. an excellent performer, the unit proved to be overly complex and
  2037. expensive. After all, it appears that the software TNC approach
  2038. is attractive because of its low cost.
  2039.  
  2040. Further DSP developments using a $99 evaluation module from Texas
  2041. Instruments, called the "DSK" (DSP Starter's Kit) proved very
  2042. promising. The DSK is based on a 40 MHz 320C26 DSP chip and
  2043. includes a 44kHz, 14 bit A/D convertor. 
  2044.  
  2045. DSP applications developed for PCTOR now includes high
  2046. performance HF modems for RTTY, AMTOR, PacTOR, and HF packet. The
  2047. DSK shares the serial port with PCTOR. User-selected modems are
  2048. downloaded from the PC to the DSK's on-chip memory at a 115200
  2049. baud.
  2050.  
  2051. Some valid concern has been expressed about the "delay"
  2052. introduced by such a DSP and subsequent timing issues. This delay
  2053. time is known as "group delay" and is the due to the time taken
  2054. for digital data to ripple through the DSP's shift registers. I
  2055. have measured this delay to be approximately 7mS longer than the
  2056. AN-93. This has not yet proved to be a problem for me, but if it
  2057. does, there are ways to reduce the group delay.
  2058.  
  2059. Which is better - the AN-93 analog or the DSP unit? A unit such
  2060. as the AN-93 is very good at what it is designed for, however,
  2061. when attempting to make it work at too wide a range of baud
  2062. rates, some compromise is necessary. In such a case, versatility
  2063. is often traded for ultimate performance. The DSP algorithms on
  2064. the other hand, are customized for the application at hand and is
  2065. expected to deliver uncompromized performance. 
  2066.  
  2067. The implementation of very efficient filters is a further
  2068. advantage of the DSP approach. The modems used in this
  2069. application uses 80th order FIR filters, has outstanding
  2070. selectivity, and good dynamic range. 
  2071.  
  2072. It is expected that in time, further digital modem code will
  2073. become available in conjunction with yet newer modes. All that
  2074. would be required is new DSP code and decoding software on the
  2075. PC.
  2076.  
  2077.  
  2078.  
  2079. 4. Future enhancements
  2080.  
  2081.  
  2082. The most-requested enhancement appears to be for a full PacTOR
  2083. implementation. This will receive very high priority.
  2084.  
  2085. The script processor for PCTOR remains to be further developed.
  2086. This feature will allow the user to embed control characters in
  2087. submitted text. These control characters will allow execution of
  2088. "test and branch" dependant on internal status variables and
  2089. allow "looping" constructs. This would allow special operations,
  2090. such as needed for contest mode.
  2091.  
  2092. Both hardware and software developments using DSP will continue.
  2093. The DSK code may eventually be ported to a PC Soundcard as DSP-
  2094. based Soundcard technology reaches maturity. There already are
  2095. innovative applications for CW, SSTV, and WEFAX for Soundcards.
  2096. The prohibitive cost of development software remains a problem.
  2097. The DSK will be used in the meantime.
  2098.  
  2099. There are plans for development of a new mode based on ideas from
  2100. MIL-STD-188-110. The new mode is expected to fill the need for
  2101. more robustness than PacTOR with data between 75 and 300 bps
  2102. suitable for HF networking. DSP modems will be used to implement
  2103. m-ary modulation at low baud rate, higher bit rates are achieved
  2104. by transmission of multiple bits per baud. This new mode will
  2105. rely on error-correction techniques to achieve coding gain and
  2106. robustness. 
  2107.  
  2108. A draft of specifications will be available in the near future
  2109. and will be submitted to various peer forums for input. Those
  2110. interested in participating on this project, please contact me. 
  2111.  
  2112. 7.0 Disclaimer
  2113.  
  2114.  
  2115.  
  2116. The author, Johan Forrer KC7WW is not responsible for any damage,
  2117. injury, loss of profit or gain associated with the use,
  2118. installation, or application of this software. 
  2119.  
  2120.  
  2121.  
  2122. November 1993
  2123. J.B.Forrer KC7WW
  2124. 26553 Priceview Drive
  2125. Monroe, OR 97456
  2126. United States of America
  2127.  
  2128.  
  2129.  
  2130. e-mail: forrerj@FRL.orst.edu
  2131. CompuServe: 70730,3472
  2132.